###########################
# xbindkeys configuration #
###########################
#
# Microsoft Arc Keyboard
#
# Version: 0.1.3
#
# Note:  This setup requires the installation of xbindkeys, alsa-utils,
#        mrxvt, mpc, iceweasel, and some other odds and ends
#
# A list of keys is in /usr/include/X11/keysym.h and in
#     /usr/include/X11/keysymdef.h; The XK_ is not needed. 
#
# List of modifier (on my keyboard): 
#
#   Control, Shift, Mod1 (Alt), Mod2 (NumLock), 
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll). 
#
# Another way to specify a key is to use 'xev' and set the 
# keycode with c:nnn or the modifier with m:nnn where nnn is 
# the keycode or the state returned by xev 
#
# We no longer care about idiot buttons, and want to enable
# only buttons found on most keyboards.
#
# keystate_numlock = enable
# keystate_scrolllock = enable
# keystate_capslock = enable

# Show bound keys file

"xbindkeys_show&"
   control+shift + q

# Volume Down: Tux-F1

"amixer -c 0 -- sset Front playback 5%- > /dev/null&"
    m:0x40 + c:67
    NoSymbol 

# Volume Down: Microsoft Arc keyboard's volume-down button:

"amixer -c 0 -- sset Front playback 5%- > /dev/null&"
    m:0x0 + c:122
    NoSymbol 

# Volume Up: Tux-F2

"amixer -c 0 -- sset Front playback 5%+ > /dev/null&"
    m:0x40 + c:68
    NoSymbol 

# Volume Up: Microsoft Arc keyboard's volume-up button:

"amixer -c 0 -- sset Front playback 5%+ > /dev/null&"
    m:0x0 + c:123
    NoSymbol 

# Volume Down: Tux- -

"amixer -c 0 -- sset Front playback 5%- > /dev/null&"
    m:0x40 + c:20
    NoSymbol 

# Volume Up: Tux- = (+)

"amixer -c 0 -- sset Front playback 5%+ > /dev/null&"
    m:0x40 + c:21
    NoSymbol 

# Mute/Unmute: Tux-F3  (where Tux is the frickin' "Windows" key)
#
# On mlsrock, the main card is 0, and the main volume control is "Front"
#
# 0x0 is the down state, 0x40 is the release state.

"amixer -c 0 -- sset Front toggle > /dev/null&"
    m:0x40 + c:69
    NoSymbol 

# Mute/Unmute: Microsoft Arc keyboard's mute button:

"amixer -c 0 -- sset Front toggle > /dev/null&"
    m:0x0 + c:121
    NoSymbol 

# gcalctool: Tux-F4

"gcalctool"
    m:0x40 + c:70
    NoSymbol 

# gcalctool: Tux-F5

"gcalctool"
    m:0x40 + c:71
    NoSymbol 

# gcalctool: Tux-F6

"gcalctool"
    m:0x40 + c:72
    NoSymbol 

# On the Microsoft Arc keyboard, the F7 to F12 keys are accessed using an
# "Fn" key on keys F1 to F6.  Somehow, this does not work with the Tux key
# pressed, so we just put dummy assignments in here for now.

# gcalctool: Tux-F7

"gcalctool"
    m:0x40 + c:73
    NoSymbol 

# gcalctool: Tux-F8

"gcalctool"
    m:0x40 + c:74
    NoSymbol 

# gcalctool: Tux-F9

"gcalctool"
    m:0x40 + c:75
    NoSymbol 

# gcalctool: Tux-F10

"gcalctool"
    m:0x40 + c:76
    NoSymbol 

# gcalctool: Tux-F11

"gcalctool"
    m:0x40 + c:95
    NoSymbol 

# gcalctool: Tux-F12

"gcalctool"
    m:0x40 + c:96
    NoSymbol 

# Play: Tux-/

"mpc play > /dev/null"
    m:0x40 + c:61
    NoSymbol 

# Play: Tux-\

"mpc stop > /dev/null"
    m:0x40 + c:51
    NoSymbol 

# Prev: Tux-[

"mpc prev > /dev/null"
    m:0x40 + c:34
    NoSymbol 

# Next: Tux-]

"mpc next > /dev/null"
    m:0x40 + c:35
    NoSymbol 

# Prev: Tux-,

"mpc prev > /dev/null"
    m:0x40 + c:59
    NoSymbol 

# Next: Tux-.

"mpc next > /dev/null"
    m:0x40 + c:60
    NoSymbol 

# gcalctool: Tux-`

"gcalctool"
    m:0x40 + c:49
    NoSymbol 

# gcalctool: Tux-;

"mpc toggle > /dev/null"
    m:0x40 + c:47
    NoSymbol 

# gcalctool: Tux-'

"mpc clear > /dev/null"
    m:0x40 + c:48
    NoSymbol 

# vim: ft=sh
#
# End of xbindkeys configuration
